A key held in common by some of a plurality of devices is called a group key. Such a group key is used to encrypt data, so that data can be transmitted to devices belonging to the group and can be concealed from devices not belonging to the group. A key distributed to each device for distributing the group key to each device is called a device key.
A method is known which manages a device key using management tree information that is data representing a graph with tree structure. In this method, a node key is assigned to each node in the management tree information, and a device is assigned to a leaf node. In this method, all of the node keys assigned to the nodes on the path from the root node to the corresponding leaf node are distributed to each device. In this method, the device stores a set of all of the distributed node keys as a device key. A group key is encrypted by one or more node keys included in the device key when distributed.
When a new device is connected to a system, a management apparatus that manages management tree information has to distribute a node key and a group key to the new device. In this case, in order to efficiently transmit information to a plurality of devices belonging to the same group, the management apparatus has to assign the new device in the management tree information.